package com.dotflat.dashboard.service;


import com.dotflat.dashboard.vo.*;
import com.matt.domain.Children;
import com.matt.domain.TargetObject;
import com.matt.service.remoteCall.DTO.SsoAreaDTO;

import java.util.Date;
import java.util.List;
import java.util.Map;


public interface DashboardService {

    InformationVO information(List<SsoAreaDTO> areaDTOList);

    //总集团园学生
    List<Children> findAllByStatusAndAreaIdIn(Integer status, String[] areaIds);

    //年级分布
    List<GradeCountVO>  grade(List<String> areaIds);

    //集团 - 园区的班级总数
    List<Map> getAreaIdCountList( List<String> areaId);

    //集团 - 班级object 的集团数量
    List<ClassesCountVO> getClassCount(List<String> areaIds);

    //查询班级object > 0 的集合
    List<TargetObject> getAll();

    //集团 - 园区的学生总数
    List<Map> getAreaIdChildrenCount(List<String> areaId);

    //查询集团下托班早教数
    List<ClassTypeCountVO>  classTypeCount(List<String> areaIds);

    //查询集团下所有园区托班早教数
    List<AreaClassTypeCountVO> areaClassTypeCount(List<String> areaIds);

    //园区班级与学生总数
    AreaClassListVO  getAreaClass(String areaId);

    List<ChildrenCheckVO> getChildrenCheck(List<String> areaIds,String date);

    List<ChildrenCheckVO> getChildrenClassCheck(List<String> childrenIds,  String beginAt, String endAt);

    List<ChildrenCheckVO> getCheckRecordsByChildrenId(List<String> childrenIds,  Date beginAt, Date endAt);

}
